home *** CD-ROM | disk | FTP | other *** search
- // itgdemo.cpp : Defines the class behaviors for the application.
- //
-
- #include "stdafx.h"
- #include "itgdemo.h"
-
- #include "mainfrm.h"
- #include "itgdmdoc.h"
- #include "itgdmvw.h"
-
- #include "itgdefs.h"
-
- #ifdef _DEBUG
- #undef THIS_FILE
- static char BASED_CODE THIS_FILE[] = __FILE__;
- #endif
-
- /////////////////////////////////////////////////////////////////////////////
- // CItgDemoApp
-
- BEGIN_MESSAGE_MAP(CItgDemoApp, CWinApp)
- //{{AFX_MSG_MAP(CItgDemoApp)
- ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
- //}}AFX_MSG_MAP
- // Standard file based document commands
- ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
- ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
- // Standard print setup command
- ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup)
- END_MESSAGE_MAP()
-
- /////////////////////////////////////////////////////////////////////////////
- // CItgDemoApp construction
-
- CItgDemoApp::CItgDemoApp()
- {
- // TODO: add construction code here,
- // Place all significant initialization in InitInstance
- }
-
- /////////////////////////////////////////////////////////////////////////////
- // The one and only CItgDemoApp object
-
- CItgDemoApp NEAR theApp;
-
- /////////////////////////////////////////////////////////////////////////////
- // CItgDemoApp initialization
-
- BOOL CItgDemoApp::InitInstance()
- {
- // Standard initialization
- // If you are not using these features and wish to reduce the size
- // of your final executable, you should remove from the following
- // the specific initialization routines you do not need.
-
- SetDialogBkColor(); // Set dialog background color to gray
- LoadStdProfileSettings(); // Load standard INI file options (including MRU)
- EnableVBX(); // Initialize VBX support
-
- // Register the application's document templates. Document templates
- // serve as the connection between documents, frame windows and views.
-
- CSingleDocTemplate* pDocTemplate;
- pDocTemplate = new CSingleDocTemplate(
- IDR_MAINFRAME,
- RUNTIME_CLASS(CItgDemoDoc),
- RUNTIME_CLASS(CMainFrame), // main SDI frame window
- RUNTIME_CLASS(CItgDemoView));
- AddDocTemplate(pDocTemplate);
-
- // create a new (empty) document
- OnFileNew();
- CDocument *pNewDoc = ((CFrameWnd *)m_pMainWnd)->GetActiveDocument();
- POSITION pos = pNewDoc->GetFirstViewPosition();
- CItgDemoView* pFirstView = (CItgDemoView *)pNewDoc->GetNextView( pos );
- pFirstView->m_ITGraph->SendMessage(VBM_METHOD, METH_CLEAR, 0L);
- pNewDoc->SetTitle("");
-
- if (m_lpCmdLine[0] != '\0')
- {
- // TODO: add command line processing here
- }
-
-
- return TRUE;
- }
-
- CDocument *CItgDemoApp::OpenDocumentFile(LPCSTR lpszFileName)
- {
- CDocument *pNewDoc = ((CFrameWnd *)m_pMainWnd)->GetActiveDocument();
- if(pNewDoc) {
- POSITION pos = pNewDoc->GetFirstViewPosition();
- CItgDemoView* pFirstView = (CItgDemoView *)pNewDoc->GetNextView( pos );
- if(pFirstView->AskToSave()) {
- CVBControl *pITG = pFirstView->m_ITGraph;
- pNewDoc->SetPathName(lpszFileName, FALSE);
- pITG->SetStrProperty("LoadFrom", pNewDoc->GetPathName());
- pITG->SetNumProperty("IsDirty", FALSE);
- }
- }
-
- return pNewDoc;
- }
-
- /////////////////////////////////////////////////////////////////////////////
- // CAboutDlg dialog used for App About
-
- class CAboutDlg : public CDialog
- {
- public:
- CAboutDlg();
-
- // Dialog Data
- //{{AFX_DATA(CAboutDlg)
- enum { IDD = IDD_ABOUTBOX };
- //}}AFX_DATA
-
- // Implementation
- protected:
- virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
- //{{AFX_MSG(CAboutDlg)
- // No message handlers
- //}}AFX_MSG
- DECLARE_MESSAGE_MAP()
- };
-
- CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
- {
- //{{AFX_DATA_INIT(CAboutDlg)
- //}}AFX_DATA_INIT
- }
-
- void CAboutDlg::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- //{{AFX_DATA_MAP(CAboutDlg)
- //}}AFX_DATA_MAP
- }
-
- BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
- //{{AFX_MSG_MAP(CAboutDlg)
- // No message handlers
- //}}AFX_MSG_MAP
- END_MESSAGE_MAP()
-
- // App command to run the dialog
- void CItgDemoApp::OnAppAbout()
- {
- CAboutDlg aboutDlg;
- aboutDlg.DoModal();
- }
-
- /////////////////////////////////////////////////////////////////////////////
- // VB-Event registration
- // (calls to AfxRegisterVBEvent will be placed here by ClassWizard)
-
- //{{AFX_VBX_REGISTER_MAP()
- UINT NEAR VBN_KEYPRESS = AfxRegisterVBEvent("KEYPRESS");
- UINT NEAR VBN_ITEMCLICK = AfxRegisterVBEvent("ITEMCLICK");
- UINT NEAR VBN_ITEMCONNECT = AfxRegisterVBEvent("ITEMCONNECT");
- UINT NEAR VBN_KEYDOWN = AfxRegisterVBEvent("KEYDOWN");
- UINT NEAR VBN_KEYUP = AfxRegisterVBEvent("KEYUP");
- UINT NEAR VBN_CLICK = AfxRegisterVBEvent("CLICK");
- UINT NEAR VBN_SELECTRECT = AfxRegisterVBEvent("SELECTRECT");
- UINT NEAR VBN_ITEMDBLCLICK = AfxRegisterVBEvent("ITEMDBLCLICK");
- UINT NEAR VBN_DBLCLICK = AfxRegisterVBEvent("DBLCLICK");
- UINT NEAR VBN_ITEMMOUSEMOVE = AfxRegisterVBEvent("ITEMMOUSEMOVE");
- UINT NEAR VBN_MOUSEDOWN = AfxRegisterVBEvent("MOUSEDOWN");
- UINT NEAR VBN_MOUSEUP = AfxRegisterVBEvent("MOUSEUP");
- UINT NEAR VBN_LINEDBLCLICK = AfxRegisterVBEvent("LINEDBLCLICK");
- //}}AFX_VBX_REGISTER_MAP
-
- /////////////////////////////////////////////////////////////////////////////
- // CItgDemoApp commands
-